home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2007 January, February, March & April
/
Chip-Cover-CD-2007-02.iso
/
Pakiet bezpieczenstwa
/
mini Pentoo LiveCD 2006.1
/
mpentoo-2006.1.iso
/
livecd.squashfs
/
usr
/
bin
/
startx
< prev
next >
Wrap
Text File
|
2006-04-12
|
3KB
|
157 lines
#!/bin/sh
# $Xorg: startx.cpp,v 1.3 2000/08/17 19:54:29 cpqbld Exp $
#
# This is just a sample implementation of a slightly less primitive
# interface than xinit. It looks for user .xinitrc and .xserverrc
# files, then system xinitrc and xserverrc files, else lets xinit choose
# its default. The system xinitrc should probably do things like check
# for .Xresources files and merge them in, startup up a window manager,
# and pop a clock and serveral xterms.
#
# Site administrators are STRONGLY urged to write nicer versions.
#
# $XFree86: xc/programs/xinit/startx.cpp,v 3.16tsi Exp $
userclientrc=$HOME/.xinitrc
userserverrc=$HOME/.xserverrc
sysclientrc=/etc/X11/xinit/xinitrc
sysserverrc=/etc/X11/xinit/xserverrc
defaultclientargs=""
defaultserverargs="-nolisten tcp -br"
clientargs=""
serverargs=""
if [ -f $userclientrc ]; then
defaultclientargs=$userclientrc
elif [ -f $sysclientrc ]; then
defaultclientargs=$sysclientrc
fi
if [ -f $userserverrc ]; then
defaultserverargs=$userserverrc
elif [ -f $sysserverrc ]; then
defaultserverargs=$sysserverrc
fi
whoseargs="client"
while [ x"$1" != x ]; do
case "$1" in
/''*|\.*) if [ "$whoseargs" = "client" ]; then
if [ "x$clientargs" = x ]; then
clientargs="$1"
else
clientargs="$clientargs $1"
fi
else
if [ "x$serverargs" = x ]; then
serverargs="$1"
else
serverargs="$serverargs $1"
fi
fi ;;
--) whoseargs="server" ;;
*) if [ "$whoseargs" = "client" ]; then
if [ "x$clientargs" = x ]; then
clientargs="$defaultclientargs $1"
else
clientargs="$clientargs $1"
fi
else
case "$1" in
:[0-9]*) display="$1"; serverargs="$serverargs $1";;
*) serverargs="$serverargs $1" ;;
esac
fi ;;
esac
shift
done
if [ x"$clientargs" = x ]; then
clientargs="$defaultclientargs"
fi
if [ x"$serverargs" = x ]; then
serverargs="$defaultserverargs"
fi
if [ x"$XAUTHORITY" = x ]; then
XAUTHORITY=$HOME/.Xauthority
export XAUTHORITY
fi
removelist=
# set up default Xauth info for this machine
case `uname` in
Linux*)
if [ -z "`hostname --version 2>&1 | grep GNU`" ]; then
hostname=`hostname -f`
else
hostname=`hostname`
fi
;;
*)
hostname=`hostname`
;;
esac
authdisplay=${display:-:0}
mcookie=`mcookie`
for displayname in $authdisplay $hostname$authdisplay; do
if ! xauth list "$displayname" | grep "$displayname " >/dev/null 2>&1; then
xauth -q << EOF
add $displayname . $mcookie
EOF
removelist="$displayname $removelist"
fi
done
cleanup() {
[ -n "$PID" ] && kill $PID > /dev/null 2>&1
if [ x"$removelist" != x ]; then
xauth remove $removelist
fi
if command -v deallocvt > /dev/null 2>&1; then
deallocvt
fi
}
trap cleanup 0
xinit $clientargs -- $serverargs -deferglyphs 16 &
PID=$!
wait $PID
unset PID